Specification-guided component-based synthesis from effectful libraries

نویسندگان

چکیده

Component-based synthesis seeks to build programs using the APIs provided by a set of libraries. Oftentimes, these have effects, which make it challenging reason about correctness potential candidates. This is because changes global state made effectful library procedures affect how they may be composed together, yielding an intractably large search space that can confound typical enumerative techniques. If nature effects are exposed as part their specification, however, deductive approaches used help guide for components. In this paper, we present new specification-guided procedure uses Hoare-style pre- and post-conditions express fine-grained component candidates drive bi-directional strategy. The alternates between forward process larger terms given existing context but otherwise unaware actual goal, alongside backward mechanism consistent with desired goal from must synthesized. To further improve efficiency scalability, integrate conflict-driven learning into algorithm provides semantic characterization previously encountered unsuccessful paths prune possible proceeds. We implemented our ideas in tool called demonstrate its effectiveness on number problems defined over OCaml libraries equipped specifications.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Constrained Synthesis from Component Libraries

Synthesis from component libraries is the problem of building a network of components from a given library, such that the network realizes a given specification. This problem is undecidable in general. It becomes decidable if we impose a bound on the number of chosen components. However, the bounded problem remains computationally hard and brute-force approaches do not scale. In this paper we s...

متن کامل

Synthesis from component libraries with costs

Synthesis is the automated construction of a system from its specification. In real life, hardware and software systems are rarely constructed from scratch. Rather, a system is typically constructed from a library of components. Lustig and Vardi formalized this intuition and studied LTL synthesis from component libraries. In real life, designers seek optimal systems. In this paper we add optima...

متن کامل

Component based simulation modeling from neutral component libraries

Researchers at the National Institute of Standards and Technology have proposed the development of libraries of formal, neutral models of simulation components. The availability of such libraries would simplify the generation of simulation models, enable reuse of existing models construction of complicated models from simpler ones, and speed Internet-based simulation services. The result would ...

متن کامل

Content-Based Framework for Component Libraries

The construction of large software systems from existing components requires efficient access to possibly large collections of such components. In this paper, we present a content-based framework to organize this large collection of components in a semi-automatic fashion, according to an extensible user-defined ontology. Neural associative memories are used for fast, similaritybased access. Rel...

متن کامل

Supporting Evolution in Component-Based Development Using Component Libraries

Component-based software development (CBSD) is a very promising software engineering technique for improving reuse and maintenance. Nevertheless, there are still some difficulties in practice when reusing, maintaining and evolving components and/or component-based (CB) applications. In this paper, we review the concepts of version and configuration management and apply them in the context of CB...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Proceedings of the ACM on programming languages

سال: 2022

ISSN: ['2475-1421']

DOI: https://doi.org/10.1145/3563310